var allTestFiles = [];
var TEST_REGEXP = /(spec|test)\.js$/i;
// Get a list of all the test files to include
Object.keys(window.__karma__.files).forEach(function(file) {
if (TEST_REGEXP.test(file)) {
// Normalize paths to RequireJS module names.
// If you require sub-dependencies of test files to be loaded as-is (requiring file extension)
// then do not normalize the paths
var normalizedTestModule = file.replace(/^\/base\/|\.js$/g, '');
allTestFiles.push(normalizedTestModule);
}
});
var coreJsShim = './node_modules/core-js/client/shim';
var deps = allTestFiles.concat(coreJsShim);
// shim for node env
var global = window;
var process = {env: {NODE_ENV: 'development'}};
require.config({
// Karma serves files under /base, which is the basePath from your config file
baseUrl: '/base',
paths: {
underscore: './node_modules/underscore/underscore',
debug: './test/dep/debug/index'
},
packages: [{
name: 'fc-mini-event',
location: './node_modules/fc-mini-event',
main: 'main'
}, {
name: 'eoo',
location: './node_modules/eoo/src',
main: 'main'
}, {
name: 'etpl',
location: './node_modules/etpl/src',
main: 'main'
}],
// dynamically load all test files
deps: deps,
// we have to kickoff jasmine, as it is asynchronous
callback: window.__karma__.start
}); |